package com.wyp.java8;

import java.util.function.Consumer;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.function.Supplier;

/**
 * @author WYP
 * @date 2021-10-11 21:12
 */



public class StreamDemo {
    public static void main(String[] args) {

        // 函数式接口 Function<T,R>  传入一个参数，获取一个返回值
//        Function<String,Integer> function = new Function<String, Integer>() {
//            @Override
//            public Integer apply(String s) {
//                return 1024;
//            }
//        };
//        Function<String,Integer> function = s -> {return 1024;};
//        System.out.println(function.apply("aaa"));

        // 断定型接口 Predicate<T>
//        Predicate<String> predicate = new Predicate<String>() {
//            @Override
//            public boolean test(String s) {
//                return s.isEmpty();
//            }
//        };
//        Predicate<String> predicate = s -> {return s.isEmpty();};
//        System.out.println(predicate.test("aaa"));

//        Consumer<String> consumer = new Consumer<String>() {
//            @Override
//            public void accept(String s) {
//                System.out.println(s);
//            }
//        };
//        consumer.accept("hello");
//        Consumer<String> consumer = s -> {
//            System.out.println(s);
//        };
//        consumer.accept("hello");

//        Supplier<String> supplier = new Supplier<String>() {
//            @Override
//            public String get() {
//                return "hello1";
//            }
//        };
        Supplier<String> supplier = () ->{return "hello1";};
        System.out.println(supplier.get());


    }
}
